#include "comm.hpp"
#include "log.hpp"


//管理管道文件
int main()
{
    //测试日志代码
    //logmessage(Info,"hello");

    //创建管道
    Init init;
    Log log;
    log.Enable(Classfile);




    //打开信道
    int fd = open(FIFO_FILE,O_RDONLY);  //等待写入方打开之后,自己才会打开文件,向后执行, open 阻塞了!
    if (fd == -1)
    {
        //perror("open");
        log(Fatal,"error string: %s, error code: %d",strerror(errno),errno);
        exit(FIFO_OPEN_ERR);
    }

    //cout << "server open file done" << endl;
    log(Info,"server open file done, error string: %s, error code: %d",strerror(errno),errno);
    log(Debug,"server open file done, error string: %s, error code: %d",strerror(errno),errno);
    log(Warning,"server open file done, error string: %s, error code: %d",strerror(errno),errno);
    log(Fatal,"server open file done, error string: %s, error code: %d",strerror(errno),errno);
    log(Error,"server open file done, error string: %s, error code: %d",strerror(errno),errno);

    //开始通信
    char buffer[1024] = {0};
    while (true)
    {
        int x = read(fd,buffer,sizeof(buffer));
        if (x > 0)
        {
            buffer[x] = 0;
            cout << "client say# " << buffer << endl;
        }
        else if (x == 0)
        {
            cout << "client quit,me too!" << endl;
            break;
        }
        else
        {
            break;
        }
    }

    close(fd);  

    return 0;
}